Networked sensor systems and methods

ABSTRACT

Embodiments of a system and methods for using a sensing attached to footwear are generally described herein. A device may include an accelerometer to measure a force, a transceiver to: send information about the force to an external device, and receive a response from the external device, the response indicating whether the force exceeded a threshold and occurred within a specified timing window around a sensory output. The device may include feedback hardware to generate feedback when the response indicates that the force fell below the threshold or occurred outside the specified timing window.

BACKGROUND

According to some technical analysts, there will be over 50 billionconnected “things” by the year 2020. This will completely transformcurrent infrastructures and will drive new innovations in industry,products, and services. Internet-of-Things (IoT) is term that representsdevices and systems that communicate over a network, such as theinternet. The devices and systems may include sensors.

Shoes equipped with sensors are increasingly common. They are used totrack athletic activities such as running, to track the elderly, fornavigation and to help the vision-impaired to move through theirenvironment. Some such shoes include a processor used to communicatewith other devices.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings, which are not necessarily drawn to scale, like numeralsmay describe similar components in different views. Like numerals havingdifferent letter suffixes may represent different instances of similarcomponents. The drawings illustrate generally, by way of example, butnot by way of limitation, various embodiments discussed in the presentdocument.

FIG. 1 illustrates a system for comparing sensor information and sensoryoutput to evaluate timing or motion in accordance with some embodiments.

FIG. 2 illustrates a system including a sensor, footwear, a mobiledevice, and a computer/server in accordance with some embodiments.

FIG. 3 illustrates generally a sensor for attaching to or integratingin, footwear or an ankle bracelet, in accordance with some embodiments.

FIG. 4 illustrates generally a system for processing sensor data inaccordance with some embodiments.

FIG. 5 illustrates generally a user interface for displaying a scorerepresentation of audio or visual responses to sensor data in accordancewith some embodiments.

FIG. 6 illustrates generally a flowchart showing a method for using asensor to determine timed movement in accordance with some embodiments.

FIG. 7 illustrates generally an example of a block diagram of a machineupon which any one or more of the techniques (e.g., methodologies)discussed herein may perform in accordance with some embodiments.

FIG. 8 illustrates generally a flowchart showing a method for using asensor to determine movement or trajectory in accordance with someembodiments.

DETAILED DESCRIPTION

Systems and methods are described herein for using footwear-basedsensors for interactive games, crowd participation, and music playing. Abasic technical problem involved in using footwear-based sensors forthese activities is determining whether force exerted at the footwear issufficient to trigger an event. A sensor may measure the exerted force.Another technical problem includes determining whether certainparameters were met using footwear at specific times.

In an example, an accelerometer may be used as a sensor in footwear forvarious purposes. For example, interactive games may be played using theaccelerometer. The use of a footwear-based accelerometer providessignificant advantages over other methods, such as using a camera. Theaccelerometer preserves privacy (i.e., it does not take pictures ofminors or people that have not consented to having their photos taken).The accelerometer may work with greater precision (determining the exacttiming of the movement) and with significantly less computing power thana camera-based approach. The accelerometer may work where a camera maynot be viable, such as in a densely packed or dimly lit room where thecamera may not be able to view a user's feet, such as at a party. Theaccelerometer may function better than a camera on a large dance floor,outdoors, or situations where users would not have or be able tomaintain line-of-sight to a camera.

FIG. 1 illustrates a system 100 for comparing sensor information andsensory output to evaluate timing or motion in accordance with someembodiments. The system 100 includes a control device 102, such as amobile device, computer, server, etc. The control device 102 may beremote or local to the sensors. Although FIG. 1 shows various componentsas part of control device 102, other configurations may be used withseparate components. The control device 102 may run games 104, includingprocessing optional elements of the games 104, such as timesynchronization 106, music synchronization 108, video synchronization110, a score board 112 or user scores, and a network service 114. Thecontrol device 102 may include a local wireless transceiver 116, toconnect to various external devices and sensors. The local wirelesstransceiver 116 may use Bluetooth or WiFi (e.g., operating in anInstitute of Electrical and Electronics Engineers (IEEE) 802.11 network)to communicate. The control device 102 may include music content 118, amusic player 120, video content, a video player, etc. The control device102 may be configured to have internet access 112 to connect with anetwork back end 124. The network back end 124 may store user scores,the score board 112, audio or visual content, or the like, such as forlater use, repeat play, or to accumulate scores.

The system 100 includes one or more sensors, e.g., a first sensor 126,an nth sensor 128, etc. The system 100 may include one or more mobiledevices, such as a first mobile device 130 an nth mobile device 132,etc. The system 100 may function with the one or more sensors 126, 128in communication with the control device 102. In another example, asensor 126 may communicate with a mobile device 130, the mobile device130 acting as an intermediary between the sensor 126 and the controldevice 102 without the sensor 126 in direct contact with the controldevice 102. The communication may take place using wirelesscommunication, such as using the wireless transceiver 116. In anotherexample, the mobile device 130 may be the control device 102.

The system 100 may include sensors (e.g., 126 and 128) as an arrays. Forexample, a first sensor 126 may be attached to a user's left footwearand a second sensor may be attached to the user's right footwear. Thesensor array may include an accelerometer or a set of accelerometersthat measure 3-axes of movement or 3-axes of forces. The dual sensorarray may allow for different uses for each sensor if the foot (left orright) is pre-identified. In another example, the foot (left or right)may be determined based on movement of the sensors. In yet anotherexample, a sensor array may include a plurality of sensors attached tofootwear of a plurality of users. In an example, sensor data from onesensor may be sent to another sensor, such as in a corresponding sensoron opposite footwear of a user (e.g., from left footwear sensor to rightfootwear sensor). The combined data may be sent to the control device102.

The system may include an optional computing device (e.g., controldevice 102), such as a smartphone, tablet, notebook computer, or acomputer directly connected to or built into a large LCD, a “smart TV,”or a game system. The control device 102 may include storage (e.g.,memory) or may use remote storage, or both, for storing sensor data. Thegames 104 may include a game application running on the control devicethat uses the sensor data as an integral part of the game. The controldevice 102 may include a processor to process the sensor data and assigna timestamp to the sensor data after it is received at the controldevice 102.

FIG. 2 illustrates a system 200 including sensors, footwear, mobiledevices, and a computer/server in accordance with some embodiments. Thevarious components of system 200 are illustrative and may vary innumber, size, shape, etc. For example, system 200 may include a singlesensor or a plurality of sensors, a single mobile device or a pluralityof mobile devices, etc. FIG. 2 shows system 200 with a first sensor 204attached to first footwear 202, a second sensor 206 attached to secondfootwear 208, and a third sensor 212 embedded or built in to thirdfootwear 210. System 200 illustratively includes a first mobile device214, a second mobile device 216, and a computer 218.

In an example, the first sensor 204 may communicate with the computer218 indirectly via the first mobile device 214 or with the computer 218directly. The second sensor 206 may communicate with its own mobiledevice, such as the second mobile device 216, or may communicate withthe first mobile device 214 as did the first sensor 204. Either thefirst or second mobile devices 214, 216 may communicate with thecomputer 218, or the sensor 206 may communicate directly with thecomputer 218. The third sensor 212 may similarly communicate with amobile device or the computer 218 directly. In an example, a mobiledevice does not communicate with the computer 218, and instead performsthe operations that would otherwise be done by the computer 218 (i.e., amobile device or the computer 218 may act as the control device 102 ofFIG. 1). A combination of these examples may be used by the system 200,such as using a single mobile device for all sensors or having a mobiledevice for each sensor.

The sensors in system 200 are shown attached to or embedded in thefootwear. Other configurations may be used, such as attaching thesensors to laces, heal, toe, etc. in different places on the footwear.The embedded sensor may also be embedded in different places on thefootwear. In another example, the sensor may be embedded in or attachedto an ankle bracelet (i.e., anklet).

The communication paths shown in system 200 may change over time or withdifferent uses of the sensors. For example, if a game or music orinteractive activity is started on the first mobile device 214, it maycontrol a single sensor or all nearby sensors. If the second mobiledevice 216 wants to join the activity, the second mobile device 216 maytake over part of the sensor communication or may leave the sensorcommunication with the first mobile device 214. The second mobile device216 may communicate directly with the first mobile device 214, such asby using Bluetooth, WiFi Direct, etc., or they may communicate through acommunication node or through the computer 218.

FIG. 3 illustrates generally a sensor 302 for attaching to orintegrating in, footwear or an ankle bracelet, in accordance with someembodiments. The sensor includes an accelerometer 304. In an example,the accelerometer 304 may be referred to as the sensor 302, withoutadditional components. In this example, the sensor 302 may be housed ina sensor enclosure that may include the additional components. In FIG.3, the sensor 302 includes a device with the accelerometer 304 as wellas additional components, some of which may be optional.

Sensor 302 includes a transceiver 314 to communicate with a mobiledevice, computer, server, network, other sensors, etc. The transceiver314 may send sensor data from the accelerometer 304 and may receiveinstructions for operating the additional components of the sensor 302.The sensor may optionally include an Light Emitting Diode (LED)/light306, a speaker 308, a haptic feedback controller 310, or a processor312. The processor 312 may be used to process instructions received fromthe transceiver 314. In another example, controls for the variouscomponents 306-310 may be hardwired into the sensor 302.

The accelerometer 304 may create sensor data based on a measured forceexerted on the accelerometer 304. The transceiver 314 may send thesensor data to a control device, for example in a packet, message,transmission, control line, etc. The control device may assign atimestamp to the packet and determine whether the packet timestamp fallswithin a window. The window may correspond to an error range around asensory output, such as a tone, music, visual output, haptic output, orthe like. When the timestamp falls outside the window, the controldevice may send an indication back to the transceiver 314. Theindication may be used by one or more of the LED/light 306, the speaker308, or the haptic feedback controller 310 to alert the user of thesensor 302 that the action was not successful. In another example, thealert may occur in response to the timestamp falling within the window.In an example, the LED/light 306 may be used to display light feedback,the speaker 308 may play a tone or music, and the haptic feedbackcontroller 310 may cause a vibration at the sensor 302.

FIG. 4 illustrates generally a system 400 for processing sensor data inaccordance with some embodiments. The system 400 includes a transceiver402, a processor 404, and memory 406. The system 400 includes musicanalyzation circuitry 408, visual analyzation circuitry 410, and sensordata analyzation circuitry 412, any of which may include hardware,software, or a combination of hardware and software. The musicanalyzation circuitry 408, visual analyzation circuitry 410, and thesensor data analyzation circuitry 412 may be included in the memory 406,operated by the processor 404, and the results may be sent to anotherdevice or to a sensor using the transceiver 402.

In an example, system 400 includes a control device, such as controldevice 102 of FIG. 1. The transceiver 402 may communicate with a sensor(e.g., sensors 126, 128, or 302 of FIGS. 1 and 3). The transceiver 402may receive a packet from a sensor and assign a timestamp to the packetwhen the packet is received. The processor 404 may determine whether thepacket falls within a window, such as a predefined window or a windowcorresponding to an error range around a sensory output. The sensoryoutput may or may not be originated by system 400. For example, themusic analyzation circuitry 408 may receive and interpret music beingplayed to determine a time when certain notes or beats occur. The musicanalyzation circuitry 408 may determine times using audio clues,techniques relying on spectrogram analysis, or the like. After the musicanalyzation circuitry 408 determines a time for a note or beat, theprocessor 404 may compare that (including using an error range such as30 milliseconds for an adult user of a sensor or 100 milliseconds for achild user of a sensor or other programmable error ranges from a fewmilliseconds to a second or more) to the timestamp for the packet todetermine whether the timestamp falls within the window. Similarly, thevisual analyzation circuitry 410 may determine, from a visual cue suchas a flash, visual event, or the like, a time for the visual cue and theprocessor 404 may determine if the packet falls within the window usingthe time for the visual cue.

Data from the packet received by the transceiver 402 may be forwarded tothe sensor data analyzation circuitry 412. The sensor data analyzationcircuitry 412 may interpret the data from the packet to determine otherinformation from the sensor, such as a force applied at the timecorresponding to the timestamp, or an orientation of the sensor, or thelike. The sensor data analyzation circuitry 412 may use past data todetermine a trend, such as an increase or decrease in force or movement,or a trend indicating that the sensor has remained stationary orsubstantially stationary for a period of time. The processor 404 may usedata from the sensor data analyzation circuitry 412 to assign points orscores, track user movement, prepare music or video to play, or thelike.

The system 400 may use the transceiver 402 and the sensor dataanalyzation circuitry 412 to determine time synchronization that allowsfor detecting the synchronization of two sensors on footwear of a userrelative to each other. This also allows for games that involvemeasuring the motion of the footwear worn by two or more participantsrelative to each other. Determining time synchronization across multiplesensors may include examining the movement reported by each sensor andaccounting for lag/latency in reporting.

The music analyzation circuitry 408 may allow for detecting thesynchronization of one or more sensors relative to a music sound track.This allows for games that involve measuring the motion of the sensorsrelative to music, such as a game with one or more people dancing to asong. It also allows for games that involve advancing a music soundtrack based on participants moving the sensors.

The visual analyzation circuitry 410 allows for detecting thesynchronization of one or more sensors relative to a video display. Thisallows for games that involve a user or users moving a sensor or sensorsin response to a video display, such as a virtual soccer game.

FIG. 5 illustrates generally a user interface 502 for displaying a scorerepresentation of audio or visual responses to sensor data in accordancewith some embodiments. The user interface 502 may include user scores,such as a first user score 504, an nth user score 506, etc. The userinterface 502 may include a visual display response 508 or an audiovisualization 510. The user interface 502 may display rules, points,activities, users, or sensors for various games, described below. Theuser interface 502 may be displayed on a control device (e.g., controldevice 102), one or more mobile devices (e.g., mobile devices 130 or132), a display coupled to the control device, or the like.

The user interface 502 may include a virtual scoreboard that allows formonitoring the results from multiple sensors and reports scores/resultsfrom individual and team events. The user interface 502 may berepresented on a single large display or distributed to mobile devices.The virtual scoreboard may report results from various individual games.For example, the virtual scoreboard allows a DJ or event coordinator(e.g., a person) to select an individual game to set up. The virtualscoreboard may allow for display of results on a screen or for broadcastto mobile devices. The virtual scoreboard may show scores for individualevents, cumulative scores, or golf-style handicaps. The system, controldevice, or user interface 502 may be connected to a back-end service.The back-end service may keep track of users' scores on various games,historical statistics, as well as handicaps. Handicaps allow players ofdifferent skill levels to compete together with more even outcomes.

A control device may include a game synchronization service to initiategames. The game synchronization service may auto start or stop a gamebased on the starting and stopping of a piece of music, a visual output,other sensory output, sensor movement, sensor force, or the like. Forexample, when a DJ starts a song, a game may auto start on the nth beatand auto stop on the last beat or when volume of the song goes below aprescribed level.

A first category of games may include games where the movement of one ormore sensors attached to footwear of a user may be compared relative tomusic or used to activate music. The music may be played by a system anddisplayed using the audio visualization 510. For example, a game mayinclude individual music synchronization. Music may be played from asource (e.g., from the game software running on a computer or from somegeneric music source). Each participant dances to some music and acontrol device analyzes the “beat” from the music and determines whichparticipant is tapping footwear closest to the beat (using sensor data).A score may be reported for each participant and displayed on the userinterface 502.

In another example, a team synchronization game may be played using twoor more players grouped into one or more teams. The control device mayplay a musical sequence and the players tap or dance to the music. Thecontrol device determines how well the players on the team aresynchronized in their tapping/movement using the sensor data. This gameallows for competition between various teams or just reporting on thesynchronization of a single team.

In yet another example, a music sequence may be repeated by using acontrol device to play a short sequence of beats. Players may then usetheir feet to tap out the same rhythm. For each turn, the control deviceincreases the complexity or duration of the sequence. The control devicethen determines which players most closely met the beat and which didnot and awards points that may be displayed on the user interface 502.

Another example includes using sensors in a virtual band. During set-upof this game, individual sensors on footwear from one or moreparticipants are associated with a music track. For example, a musictrack might be an individual instrument (e.g., percussion, guitar,trumpet, etc.). When the control device receives a movement indicationfrom a sensor, the control device causes the music for that track to beplayed (for example, one beat per tap of the sensor). If all or amajority of the sensors of the participants are moved together in theright synchronization, the music may be made to sound coordinated (e.g.,played with all or the majority of instruments). If not, the music maybe made to sound bad by desynchronizing the various instruments, notplaying one or more instruments, or altering the tone of one or moreinstruments. In another example, foot movement of the members of thevirtual band may control relative volumes of their respective musicalinstruments. For example, a trumpet controlled by a sensor or sensors ofa first player may increase in sound when the first player dances ortaps a foot with higher intensity, such as by measuring range andfrequency of motion or force. The emphasis of this game may rely onmovement over time rather than simply time or movement independently.For example, range, frequency, and trajectory of the physical motion ofthe foot may be a controlling element determined by the sensorSimilarly, a musical instrument may fade when a corresponding playerslows or stops moving or moves in an asynchronous manner.

In an example, the virtual band example above may be extended to abattle of the bands game. This example may use a similar setup as thevirtual band, and use more than one band that plays consecutively (i.e.,not at the same time). The control device may determine which band hadthe most accurate playing after each band plays a song or a set. Thewinning band or bands may be awarded points displayed on the userinterface 502.

A second category of games may include games where the movement of oneuser's feet is directly compared, using sensor data, against an absolutetime or distance or against movement of another player's feet usingsensor data.

For example, a game in this category may include measuring a jump orkick. A control device may instruct a user to perform a particularphysical maneuver, such as a jump or kick. The accelerometer in thesensor attached to the user's footwear may be used to record themovement and report to the control device. The control device then maydetermine the maximum time in air, maximum height of kick, etc. If morethan one player is playing, the control device may report the scores orwinners on the user interface 502.

In another example, a game in the second category may include arepeating game where a player must mimic actions by another player, aleader, etc. For example, a first player may tap a foot, and a secondplayer must then repeat the tap. This game may be iterative, such as ifthe first player then does a kick, the second player must tap and thenkick. Hand motions or other actions may also be incorporated usingadditional sensors, toys, or other games.

A third category of games may include games where the movement of one ormore player's feet, as measured by sensors attached to footwear, may beused as a control input to some other aspect of a visually-orientedgame. For these games, a player may use a display (e.g., a television),in front of a projected display (such as a liquid crystal display (LCD)projector), or an augmented reality or virtual reality displays.

For example, games in the third category may include a virtual kickballgame or virtual soccer/football game. The control device may display aball, either moving or stationary, and the user may attempt to virtuallykick the ball. A sensor may send data to the control device, which maythen determine based on the timing of the kick measured by the sensorwhether contact was virtually “made” with the ball. The control devicemay also determine, using sensor data such as force exerted, how far tovirtually move the ball based on the kick. A plurality of players mayuse a plurality of sensors to move a ball around for a soccer game usingthese techniques and a single display (e.g., user interface 502) or aplurality of displays (e.g., two or more displays remote from eachother). In the virtual kickball game, a virtual representation of aplayer may be presented running bases after the kick, based onprobabilities and direction of the kick causing the virtual ball to go acertain virtual distance. In an example, haptic feedback may cause thesensor to vibrate in response to a successful kick of a soccer or kickball, such as to simulate a feeling on a foot of kicking a ball.

In another example, a virtual game may be played at a large gathering ofpeople. For example, at a football or soccer/football stadium, a largenumber of fans attending the game may create a virtual game on thescoreboard (based on movement of sensors attached to their footwear). Inanother example, the fans may be watching the stadium remotely and mayaffect the virtual game on the scoreboard. In another example, bothlocal and remote fans may affect the virtual game on the scoreboard. Thescoreboard may be represented by the user interface 502. An exampleimplementation may include using the average movement from fans in afirst section to control one player, and the average movement from fansin a second section to control a second player, etc. In an example, thisgame could be played at half-time of a “real” game being played at thestadium.

In yet another game, a virtual pedal for a car racing game may becontrolled using a sensor. For example, a control device may detect afoot position and use the position to determine pressure on a virtualpedal for a car. The car may be displayed on the user interface 502,controlled by the determined pressure. An optional haptic mechanism mayprovide a simulated feel of pressing a pedal. Virtualization of thepedal mechanism allows a user to play car driving video games withoutneeding an additional physical peripheral device. In this game, aplurality of virtual pedals may be used to control a car. For example, afirst virtual pedal may act as an accelerator, as second as a brake, andoptionally, a third as a clutch. The various pedals may be controlled bydifferent sensors, or may be dependent on motion of a single sensor(e.g., the sensor may determine that a user moves a right foot to theright to “step” on the virtual accelerator pedal and the right foot tothe left to “step” on the virtual brake pedal). This example may usevirtual pedals corresponding to physical space around the user tosimulate a real car, such as by having a user control a clutch with aleft foot and a brake and an accelerator with a right foot. In anexample, haptic feedback may be used to provide a simulated feel ofpedal resistance.

Other game examples in the third game category include a virtualskateboard game and a virtual hopscotch game. For the virtual skateboardexample, a skateboard may be placed on a small stand that allows forsmall movement in 3 dimensions. For the virtual hopscotch example, eachjump by a user may advance a virtual representation of the user througha virtual world on the user interface 502 (e.g., jumping over mountains,through a forest, etc.) using sensor data. For games in the thirdcategory, real-time haptic feedback may be provided to simulate the feelof real action (e.g., landing in hopscotch or hitting bumps in the roadon a skateboard).

In yet another example, a sensor may be used for training, such as byusing real-time haptic feedback. For example, a group of synchronizeddancers may benefit from monitoring their dances with the sensors. Adancer may receive haptic feedback suggesting that the dancer is“leading” or “following,” or may receive information about trends. Thedancer may thus be alerted that the dancer should slow down or speed upthe pace or tempo to be in sync with the other dancers. Other forms ofsynchronized activities may also benefit from using sensors to monitoractivity of two or more people, such as ballroom dancing, synchronizedswimming/diving, pedaling on a two-person bicycle, or the like. Hapticfeedback may be used to indicate, in examples such as ballroom dancing,that a beat is starting. This may allow a user to keep a beat moreaccurately by relying on the haptic feedback instead of a personalunderstanding of rhythm.

FIG. 6 illustrates generally a flowchart showing a method 600 for usinga sensor to determine timed movement in accordance with someembodiments. The method 600 may include an operation 602 to receive apacket from a sensor. The sensor may include an accelerometer and thepacket may include a force measurement. The packet may be received overa wireless connection. The sensor may be attached to footwear of a user.

The method 600 may include an operation 604 to assign a timestamp to thepacket. The method 600 may include an operation 606 to determine whetherthe timestamp falls within a window. The window may correspond to anerror range around a sensory output (i.e., a time that an outputoccurs), such as a visual output, an audio output, or both.

The method 600 may include an operation 608 to save a successfulmovement indication when the timestamp falls within the window.Operation 608 may include first determining that the packet timestampfalls within the window, includes sensor data indicating the sensorachieved a force that exceeds a minimum force, or both. The method 600may include operations to, in response to saving the successful movementindication, display an output, play a tone or music, vibrate the sensor,or the like. The successful movement indication may be displayed on auser interface.

FIG. 7 illustrates generally an example of a block diagram of a machine700 upon which any one or more of the techniques (e.g., methodologies)discussed herein may perform in accordance with some embodiments. Inalternative embodiments, the machine 700 may operate as a standalonedevice or may be connected (e.g., networked) to other machines. In anetworked deployment, the machine 700 may operate in the capacity of aserver machine, a client machine, or both in server-client networkenvironments. In an example, the machine 700 may act as a peer machinein peer-to-peer (P2P) (or other distributed) network environment. Themachine 700 may be a personal computer (PC), a tablet PC, a set-top box(STB), a personal digital assistant (PDA), a mobile telephone, a webappliance, a network router, switch or bridge, or any machine capable ofexecuting instructions (sequential or otherwise) that specify actions tobe taken by that machine. Further, while only a single machine isillustrated, the term “machine” shall also be taken to include anycollection of machines that individually or jointly execute a set (ormultiple sets) of instructions to perform any one or more of themethodologies discussed herein, such as cloud computing, software as aservice (SaaS), other computer cluster configurations.

Examples, as described herein, may include, or may operate on, logic ora number of components, modules, or mechanisms. Modules are tangibleentities (e.g., hardware) capable of performing specified operationswhen operating. A module includes hardware. In an example, the hardwaremay be specifically configured to carry out a specific operation (e.g.,hardwired). In an example, the hardware may include configurableexecution units (e.g., transistors, circuits, etc.) and a computerreadable medium containing instructions, where the instructionsconfigure the execution units to carry out a specific operation when inoperation. The configuring may occur under the direction of theexecutions units or a loading mechanism. Accordingly, the executionunits are communicatively coupled to the computer readable medium whenthe device is operating. In this example, the execution units may be amember of more than one module. For example, under operation, theexecution units may be configured by a first set of instructions toimplement a first module at one point in time and reconfigured by asecond set of instructions to implement a second module.

Machine (e.g., computer system) 700 may include a hardware processor 702(e.g., a central processing unit (CPU), a graphics processing unit(GPU), a hardware processor core, or any combination thereof), a mainmemory 704 and a static memory 706, some or all of which may communicatewith each other via an interlink (e.g., bus) 708. The machine 700 mayfurther include a display unit 710, an alphanumeric input device 712(e.g., a keyboard), and a user interface (UI) navigation device 714(e.g., a mouse). In an example, the display unit 710, alphanumeric inputdevice 712 and UI navigation device 714 may be a touch screen display.The machine 700 may additionally include a storage device (e.g., driveunit) 716, a signal generation device 718 (e.g., a speaker), a networkinterface device 720, and one or more sensors 721, such as a globalpositioning system (GPS) sensor, compass, accelerometer, or othersensor. The machine 700 may include an output controller 728, such as aserial (e.g., universal serial bus (USB), parallel, or other wired orwireless (e.g., infrared (IR), near field communication (NFC), etc.)connection to communicate or control one or more peripheral devices(e.g., a printer, card reader, etc.).

The storage device 716 may include a machine readable medium 722 that isnon-transitory on which is stored one or more sets of data structures orinstructions 724 (e.g., software) embodying or utilized by any one ormore of the techniques or functions described herein. The instructions724 may also reside, completely or at least partially, within the mainmemory 704, within static memory 706, or within the hardware processor702 during execution thereof by the machine 700. In an example, one orany combination of the hardware processor 702, the main memory 704, thestatic memory 706, or the storage device 716 may constitute machinereadable media.

While the machine readable medium 722 is illustrated as a single medium,the term “machine readable medium” may include a single medium ormultiple media (e.g., a centralized or distributed database, and/orassociated caches and servers) configured to store the one or moreinstructions 724.

The term “machine readable medium” may include any medium that iscapable of storing, encoding, or carrying instructions for execution bythe machine 700 and that cause the machine 700 to perform any one ormore of the techniques of the present disclosure, or that is capable ofstoring, encoding or carrying data structures used by or associated withsuch instructions. Non-limiting machine readable medium examples mayinclude solid-state memories, and optical and magnetic media. In anexample, a massed machine readable medium comprises a machine readablemedium with a plurality of particles having invariant (e.g., rest) mass.Accordingly, massed machine-readable media are not transitorypropagating signals. Specific examples of massed machine readable mediamay include: non-volatile memory, such as semiconductor memory devices(e.g., Electrically Programmable Read-Only Memory (EPROM), ElectricallyErasable Programmable Read-Only Memory (EEPROM)) and flash memorydevices; magnetic disks, such as internal hard disks and removabledisks; magneto-optical disks; and CD-ROM and DVD-ROM disks.

The instructions 724 may further be transmitted or received over acommunications network 726 using a transmission medium via the networkinterface device 720 utilizing any one of a number of transfer protocols(e.g., frame relay, internet protocol (IP), transmission controlprotocol (TCP), user datagram protocol (UDP), hypertext transferprotocol (HTTP), etc.). Example communication networks may include alocal area network (LAN), a wide area network (WAN), a packet datanetwork (e.g., the Internet), mobile telephone networks (e.g., cellularnetworks), Plain Old Telephone (POTS) networks, and wireless datanetworks (e.g., Institute of Electrical and Electronics Engineers (IEEE)802.11 family of standards known as Wi-Fi®, IEEE 802.16 family ofstandards known as WiMax®), IEEE 802.15.4 family of standards,peer-to-peer (P2P) networks, among others. In an example, the networkinterface device 720 may include one or more physical jacks (e.g.,Ethernet, coaxial, or phone jacks) or one or more antennas to connect tothe communications network 726. In an example, the network interfacedevice 720 may include a plurality of antennas to wirelessly communicateusing at least one of single-input multiple-output (SIMO),multiple-input multiple-output (MIMO), or multiple-input single-output(MISO) techniques. The term “transmission medium” shall be taken toinclude any intangible medium that is capable of storing, encoding orcarrying instructions for execution by the machine 700, and includesdigital or analog communications signals or other intangible medium tofacilitate communication of such software.

FIG. 8 illustrates generally a flowchart showing a method 800 for usinga sensor to determine movement or trajectory in accordance with someembodiments. The method 800 may include an operation 802 to receive apacket from a sensor. The sensor may include an accelerometer. Thepacket may be received over a wireless connection. The sensor may beattached to footwear of a user.

The method 800 may include an operation 804 to determine a force,movement, or trajectory of the sensor from the packet. Operation 804 mayinclude determining the force, movement, or trajectory from sensor data,including from a plurality of packets. In another example, the packetmay include information about a plurality of sensor measurements.

The method 800 may include an operation 806 to determine whether theforce, movement, or trajectory corresponds to a sensory output. Thesensory output may include an error range. In an example, the sensoryoutput may include a visual output, an audio output, or both.

The method 800 may include an operation 808 to save a successfulmovement indication when the force movement, or trajectory correspondsto the sensory output. Operation 808 may include first determining thatthe packet timestamp falls within the window, includes sensor dataindicating the sensor achieved a force that exceeds a minimum force, orboth. The method 800 may include operations to, in response to savingthe successful movement indication, display an output, play a tone ormusic, vibrate the sensor, or the like. The successful movementindication may be displayed on a user interface. In another example, theforce may indicate that the sensor is not moving or was not moved for aperiod of time (e.g., a yoga pose). For example, the sensor may includean accelerometer that may measure a constant or nearly constantgravitational force without other forces exerted on the sensor.

VARIOUS NOTES & EXAMPLES

Each of these non-limiting examples may stand on its own, or may becombined in various permutations or combinations with one or more of theother examples.

In Example 1 is a control device comprising: a transceiver to: receivesensor data from a sensor; and assign a timestamp to the sensor data; aprocessor to: determine whether the timestamp falls within a window, thewindow corresponding to an error range around a sensory output; andsave, in response to determining that the timestamp falls within thewindow, a successful movement indication to a database.

In Example 2, the subject matter of Example 1 optionally includes,wherein the sensor includes an accelerometer.

In Example 3, the subject matter of Example 2 optionally includes,wherein the sensor data includes a force measurement.

In Example 4, the subject matter of Example 3 optionally includes,wherein to save the successful movement indication includes theprocessor to first determine whether the force measurement exceeds aminimum force.

In Example 5, the subject matter of any one or more of Examples 1-4optionally include, further comprising a display that includes a userinterface to display the successful movement indication.

In Example 6, the subject matter of Example 5 optionally includes,wherein the processor is to increment a count of points for a user in agame displayed on the user interface based on the successful movementindication.

In Example 7, the subject matter of any one or more of Examples 1-6optionally include, wherein to receive the sensor data, the transceiveris to receive the sensor data over a wireless connection.

In Example 8, the subject matter of any one or more of Examples 1-7optionally include, wherein the sensor is attached to footwear of auser.

In Example 9, the subject matter of any one or more of Examples 1-8optionally include, wherein the processor is to play a tone in responseto saving the successful movement indication.

In Example 10, the subject matter of any one or more of Examples 1-9optionally include, wherein the error range is plus or minus 100milliseconds.

In Example 11, the subject matter of any one or more of Examples 1-10optionally include, wherein the sensory output includes an audio orvisual output.

In Example 12, the subject matter of Example 11 optionally includes,wherein the audio output includes music, and wherein to determinewhether the timestamp falls within the window, the processor is todetermine that the sensor data is synchronized with the music.

In Example 13, the subject matter of any one or more of Examples 11-12optionally include, wherein the visual output includes video and whereinto determine whether the timestamp falls within the window, theprocessor is to determine that the sensor data is synchronized with thevideo.

In Example 14, the subject matter of any one or more of Examples 1-13optionally include, wherein the transceiver is to send, in response todetermining that the timestamp falls outside the window, a signal to thesensor indicating feedback to be performed at the sensor.

In Example 15, the subject matter of Example 14 optionally includes,wherein the feedback includes haptic feedback, light feedback, or audiofeedback.

In Example 16, the subject matter of any one or more of Examples 1-15optionally include, wherein the control device is a mobile device.

In Example 17, the subject matter of any one or more of Examples 1-16optionally include, wherein the sensor is attached to an ankle bracelet.

Example 18 is at least one machine readable medium includinginstructions that, when executed, cause the machine to performoperations for dynamic hardware acceleration, the operations comprising:receiving sensor data from a sensor; assigning a timestamp to the sensordata; determining whether the timestamp falls within a window, thewindow corresponding to an error range around a sensory output; andsaving, in response to determining that the packet timestamp fallswithin the window, a successful movement indication to a database.

In Example 19, the subject matter of Example 18 optionally includes,wherein the sensor includes an accelerometer.

In Example 20, the subject matter of Example 19 optionally includes,wherein the sensor data includes a force measurement.

In Example 21, the subject matter of Example 20 optionally includes,wherein saving the successful movement indication includes firstdetermining whether the force measurement exceeds a minimum force.

In Example 22, the subject matter of any one or more of Examples 18-21optionally include, further comprising displaying the successfulmovement indication on a user interface.

In Example 23, the subject matter of Example 22 optionally includes,further comprising incrementing a count of points for a user in a gamedisplayed on the user interface based on the successful movementindication.

In Example 24, the subject matter of any one or more of Examples 18-23optionally include, wherein receiving the sensor data includes receivingthe sensor data over a wireless connection.

In Example 25, the subject matter of any one or more of Examples 18-24optionally include, wherein the sensor is attached to footwear of auser.

In Example 26, the subject matter of any one or more of Examples 18-25optionally include, further comprising playing a tone in response tosaving the successful movement indication.

In Example 27, the subject matter of any one or more of Examples 18-26optionally include, wherein the error range is plus or minus 100milliseconds.

In Example 28, the subject matter of any one or more of Examples 18-27optionally include, wherein the sensory output includes an audio orvisual output.

In Example 29, the subject matter of any one or more of Examples 18-28optionally include, further comprising sending, in response todetermining that the timestamp falls outside the window, a signal to thesensor indicating feedback to be performed at the sensor.

In Example 30, the subject matter of Example 29 optionally includes,wherein the feedback includes haptic feedback, light feedback, or audiofeedback.

Example 31 is a method for using a sensor to determine movement, themethod comprising: receiving sensor data from the sensor; assigning atimestamp to the sensor data; determining whether the timestamp fallswithin a window, the window corresponding to an error range around asensory output; and saving, in response to determining that thetimestamp falls within the window, a successful movement indication to adatabase.

In Example 32, the subject matter of Example 31 optionally includes,wherein the sensor includes an accelerometer.

In Example 33, the subject matter of Example 32 optionally includes,wherein the sensor data includes a force measurement.

In Example 34, the subject matter of Example 33 optionally includes,wherein saving the successful movement indication includes firstdetermining whether the force measurement exceeds a minimum force.

In Example 35, the subject matter of any one or more of Examples 31-34optionally include, further comprising displaying the successfulmovement indication on a user interface.

In Example 36, the subject matter of Example 35 optionally includes,further comprising incrementing a count of points for a user in a gamedisplayed on the user interface based on the successful movementindication.

In Example 37, the subject matter of any one or more of Examples 31-36optionally include, wherein receiving the sensor data includes receivingthe sensor data over a wireless connection.

In Example 38, the subject matter of any one or more of Examples 31-37optionally include, wherein the sensor is attached to footwear of auser.

In Example 39, the subject matter of any one or more of Examples 31-38optionally include, further comprising playing a tone in response tosaving the successful movement indication.

In Example 40, the subject matter of any one or more of Examples 31-39optionally include, wherein the error range is plus or minus 100milliseconds.

In Example 41, the subject matter of any one or more of Examples 31-40optionally include, wherein the sensory output includes an audio orvisual output.

In Example 42, the subject matter of any one or more of Examples 31-41optionally include, further comprising sending, in response todetermining that the timestamp falls outside the window, a signal to thesensor indicating feedback to be performed at the sensor.

In Example 43, the subject matter of Example 42 optionally includes,wherein the feedback includes haptic feedback, light feedback, or audiofeedback.

Example 44 is a device configured to move with to footwear, the devicecomprising: an accelerometer to measure a force; a transceiver to: sendinformation about the force to an external device; and receive aresponse from the external device, the response indicating whether theforce exceeded a threshold and occurred within a specified timing windowaround a sensory output; and feedback hardware to generate feedback whenthe response indicates that the force fell below the threshold oroccurred outside the specified timing window.

In Example 45, the subject matter of Example 44 optionally includes,wherein when the response indicates that the force exceeded thethreshold and occurred within the specified timing window, thetransceiver is to receive an indication of points awarded to a user ofthe footwear in a game.

In Example 46, the subject matter of any one or more of Examples 44-45optionally include, wherein when the response indicates that the forceexceeded the threshold and occurred within the specified timing window,the feedback hardware is to play a tone, generate haptic feedback, ordisplay light.

In Example 47, the subject matter of any one or more of Examples 44-46optionally include, wherein to send the information, the transceiver isto send the information over a wireless connection with the externaldevice.

In Example 48, the subject matter of any one or more of Examples 44-47optionally include, wherein the specified timing window is plus or minus100 milliseconds around the sensory output.

In Example 49, the subject matter of any one or more of Examples 44-48optionally include, wherein the sensory output includes an audio orvisual output.

In Example 50, the subject matter of any one or more of Examples 44-49optionally include, wherein to generate feedback, the feedback hardwareis to play a tone, generate haptic feedback, or display light.

In Example 51, the subject matter of any one or more of Examples 44-50optionally include, wherein before the transceiver sends informationabout the force, the transceiver is to send an initialization indicationto the external device, the initialization indication sent in responseto the accelerometer determining a lack of movement for a predeterminedperiod of time.

Example 52 is a method for using a sensor configured to move with tofootwear, the method comprising: measuring a force using the sensor;sending information about the force to an external device; receiving aresponse from the external device, the response indicating whether theforce exceeded a threshold and occurred within a specified timing windowaround a sensory output; and generating feedback when the responseindicates that the force fell below the threshold or occurred outsidethe specified timing window.

In Example 53, the subject matter of Example 52 optionally includes,further comprising, when the response indicates that the force exceededthe threshold and occurred within the specified timing window, receivingan indication of points awarded to a user of the footwear in a game.

In Example 54, the subject matter of any one or more of Examples 52-53optionally include, further comprising, when the response indicates thatthe force exceeded the threshold and occurred within the specifiedtiming window, playing a tone, generating haptic feedback, or displayinglight.

In Example 55, the subject matter of any one or more of Examples 52-54optionally include, wherein sending information includes sendinginformation over a wireless connection with the external device.

In Example 56, the subject matter of any one or more of Examples 52-55optionally include, wherein the specified timing window is plus or minus100 milliseconds around the sensory output.

In Example 57, the subject matter of any one or more of Examples 52-56optionally include, wherein the sensory output includes an audio orvisual output.

In Example 58, the subject matter of any one or more of Examples 52-57optionally include, wherein generating feedback includes playing a tone,generating haptic feedback, or displaying light.

In Example 59, the subject matter of any one or more of Examples 52-58optionally include, further comprising: determining a lack of movementat the sensor for a predetermined period of time; and before sendinginformation about the force, sending an initialization indication to theexternal device, the initialization indication sent in response todetermining the lack of movement.

In Example 60, the subject matter of any one or more of Examples 52-59optionally include, wherein the sensor is an accelerometer.

Example 61 is at least one machine readable medium includinginstructions that, when executed, cause the machine to performoperations for dynamic hardware acceleration, the operations comprising:measuring a force using the sensor; sending information about the forceto an external device; receiving a response from the external device,the response indicating whether the force exceeded a threshold andoccurred within a specified timing window around a sensory output; andgenerating feedback when the response indicates that the force fellbelow the threshold or occurred outside the specified timing window.

In Example 62, the subject matter of Example 61 optionally includes,further comprising, when the response indicates that the force exceededthe threshold and occurred within the specified timing window, receivingan indication of points awarded to a user of the footwear in a game.

In Example 63, the subject matter of any one or more of Examples 61-62optionally include, further comprising, when the response indicates thatthe force exceeded the threshold and occurred within the specifiedtiming window, playing a tone, generating haptic feedback, or displayinglight.

In Example 64, the subject matter of any one or more of Examples 61-63optionally include, wherein sending information includes sendinginformation over a wireless connection with the external device.

In Example 65, the subject matter of any one or more of Examples 61-64optionally include, wherein the specified timing window is plus or minus100 milliseconds around the sensory output.

In Example 66, the subject matter of any one or more of Examples 61-65optionally include, wherein the sensory output includes an audio orvisual output.

In Example 67, the subject matter of any one or more of Examples 61-66optionally include, wherein generating feedback includes playing a tone,generating haptic feedback, or displaying light.

In Example 68, the subject matter of any one or more of Examples 61-67optionally include, further comprising: determining a lack of movementat the sensor for a predetermined period of time; and before sendinginformation about the force, sending an initialization indication to theexternal device, the initialization indication sent in response todetermining the lack of movement.

In Example 69, the subject matter of any one or more of Examples 61-68optionally include, wherein the sensor is an accelerometer.

Example 70 is at least one machine-readable medium includinginstructions for operation of a computing system, which when executed bya machine, cause the machine to perform operations of any of the methodsof Examples 31-43.

Example 71 is an apparatus comprising means for performing any of themethods of Examples 31-43.

Example 72 is at least one machine-readable medium includinginstructions for operation of a computing system, which when executed bya machine, cause the machine to perform operations of any of the methodsof Examples 52-60.

Example 73 is an apparatus comprising means for performing any of themethods of Examples 52-60.

Example 74 is an apparatus comprising: means for receiving sensor datafrom a sensor; means for assigning a timestamp to the sensor data; meansfor determining whether the timestamp falls within a window, the windowcorresponding to an error range around a sensory output; and means forsaving, in response to determining that the timestamp falls within thewindow, a successful movement indication to a database.

In Example 75, the subject matter of Example 74 optionally includes,wherein the sensor includes an accelerometer.

In Example 76, the subject matter of Example 75 optionally includes,wherein the sensor data includes a force measurement.

In Example 77, the subject matter of Example 76 optionally includes,wherein the means for saving the successful movement indication includemeans for first determining whether the force measurement exceeds aminimum force.

In Example 78, the subject matter of any one or more of Examples 74-77optionally include, further comprising means for displaying thesuccessful movement indication on a user interface.

In Example 79, the subject matter of Example 78 optionally includes,further comprising means for incrementing a count of points for a userin a game displayed on the user interface based on the successfulmovement indication.

In Example 80, the subject matter of any one or more of Examples 74-79optionally include, wherein the means for receiving the sensor datainclude means for receiving the sensor data over a wireless connection.

In Example 81, the subject matter of any one or more of Examples 74-80optionally include, wherein the sensor is attached to footwear of auser.

In Example 82, the subject matter of any one or more of Examples 74-81optionally include, further comprising means for playing a tone inresponse to saving the successful movement indication.

In Example 83, the subject matter of any one or more of Examples 74-82optionally include, wherein the error range is plus or minus 100milliseconds.

In Example 84, the subject matter of any one or more of Examples 74-83optionally include, wherein the sensory output includes an audio orvisual output.

In Example 85, the subject matter of any one or more of Examples 74-84optionally include, further comprising means for sending, in response todetermining that the timestamp falls outside the window, a signal to thesensor indicating feedback to be performed at the sensor.

In Example 86, the subject matter of Example 85 optionally includes,wherein the feedback includes haptic feedback, light feedback, or audiofeedback.

Example 87 is an apparatus comprising: means for measuring a force usingthe sensor; means for sending information about the force to an externaldevice; means for receiving a response from the external device, theresponse indicating whether the force exceeded a threshold and occurredwithin a specified timing window around a sensory output; and means forgenerating feedback when the response indicates that the force fellbelow the threshold or occurred outside the specified timing window.

In Example 88, the subject matter of Example 87 optionally includes,further comprising, when the response indicates that the force exceededthe threshold and occurred within the specified timing window, means forreceiving an indication of points awarded to a user of the footwear in agame.

In Example 89, the subject matter of any one or more of Examples 87-88optionally include, further comprising, when the response indicates thatthe force exceeded the threshold and occurred within the specifiedtiming window, means for playing a tone, means for generating hapticfeedback, or means for displaying light.

In Example 90, the subject matter of any one or more of Examples 87-89optionally include, wherein the means for sending information includemeans for sending information over a wireless connection with theexternal device.

In Example 91, the subject matter of any one or more of Examples 87-90optionally include, wherein the specified timing window is plus or minus100 milliseconds around the sensory output.

In Example 92, the subject matter of any one or more of Examples 87-91optionally include, wherein the sensory output includes an audio orvisual output.

In Example 93, the subject matter of any one or more of Examples 87-92optionally include, wherein the means for generating feedback includemeans for playing a tone, means for generating haptic feedback, or meansfor displaying light.

In Example 94, the subject matter of any one or more of Examples 87-93optionally include, further comprising: means for determining a lack ofmovement at the sensor for a predetermined period of time; and beforesending information about the force, means for sending an initializationindication to the external device, the initialization indication sent inresponse to determining the lack of movement.

In Example 95, the subject matter of any one or more of Examples 87-94optionally include, wherein the sensor is an accelerometer.

Example 96 is at least one machine readable medium includinginstructions that, when executed, cause the machine to performoperations for dynamic hardware acceleration, the operations comprising:receiving sensor data from a plurality of sensors; assigning a pluralityof timestamps to the sensor data; determining whether the plurality oftimestamps fall within a window, the window corresponding to an errorrange around a sensory output; and in response to determining that afirst timestamp of the plurality of timestamps falls within the window,saving a first indication to a database.

In Example 97, the subject matter of Example 96 optionally includes,wherein in response to determining a set of timestamps of the pluralityof timestamps fall within the window, playing a plurality of instrumentlines of a song, wherein the plurality of instrument lines correspond tothe set of timestamps.

In Example 98, the subject matter of any one or more of Examples 96-97optionally include, wherein the plurality of packets include forceinformation from the plurality of sensors.

In Example 99, the subject matter of Example 98 optionally includes,wherein in response to saving the first indication, increasing ordecreasing a speed of a virtual vehicle on a user interface in responseto an increase or decrease in force at a first sensor, the first sensorcorresponding to the first timestamp.

In Example 100, the subject matter of any one or more of Examples 96-99optionally include, further comprising determining that the plurality oftimestamps are synchronized, and in response, playing music.

In Example 101, the subject matter of any one or more of Examples 96-100optionally include, wherein the sensory output includes an nth beat of asong.

In Example 102, the subject matter of any one or more of Examples 96-101optionally include, further comprising displaying results of whether theplurality of timestamps fall within the window on a user interface.

In Example 103, the subject matter of any one or more of Examples 96-102optionally include, further comprising assigning points in a virtualgame to users of the plurality of sensors according to temporalproximity of the plurality of timestamps to the sensory output.

Example 104 is a method for determining time synchronization, the methodcomprising: receiving, at a server, an indication from a sensor of afirst wearable device; determining whether the first wearable device istime synchronized with a second wearable device using the indication;and saving, in response to determining that the first wearable device issynchronized with the second wearable device, a successful timesynchronization message to a database.

In Example 105, the subject matter of Example 104 optionally includes,wherein determining whether the first wearable device is timesynchronized with a second wearable device includes determining whethera first timestamp corresponding to the indication is synchronized with asecond timestamp corresponding to a second indication received form thesecond wearable device.

In Example 106, the subject matter of any one or more of Examples104-105 optionally include, further comprising using the indication tocontrol a virtual pedal on a virtual car.

In Example 107, the subject matter of Example 106 optionally includes,wherein the indication includes a force measurement.

In Example 108, the subject matter of any one or more of Examples104-107 optionally include, further comprising updating a scoreboard inresponse to determining that the first wearable device is synchronizedwith the second wearable device.

Example 109 is a method for determining music synchronization, themethod comprising: receiving, at a server, an indication from a sensorof a first wearable device; determining whether the first wearabledevice is synchronized with music being played; and saving, in responseto determining that the first wearable device is synchronized with themusic, a successful music synchronization message to a database.

In Example 110, the subject matter of Example 109 optionally includes,wherein determining whether the first wearable device is synchronizedwith the music includes determining whether a first timestampcorresponding to the indication is synchronized with a second timestampcorresponding to the music.

In Example 111, the subject matter of any one or more of Examples109-110 optionally include, wherein the indication includes a forcemeasurement.

In Example 112, the subject matter of any one or more of Examples109-111 optionally include, further comprising changing volume of themusic in response to receiving the indication.

In Example 113, the subject matter of any one or more of Examples109-112 optionally include, further comprising updating a scoreboard inresponse to determining that the first wearable device is synchronizedwith the music.

Example 114 is a method for determining video synchronization, themethod comprising: receiving, at a server, an indication from a sensorof a first wearable device; determining whether the first wearabledevice is synchronized with video being played; and saving, in responseto determining that the first wearable device is synchronized with thevideo, a successful video synchronization message to a database.

In Example 115, the subject matter of Example 114 optionally includes,wherein determining whether the first wearable device is synchronizedwith the video includes determining whether a first timestampcorresponding to the indication is synchronized with a second timestampcorresponding to the video.

In Example 116, the subject matter of any one or more of Examples114-115 optionally include, wherein the indication includes a forcemeasurement.

In Example 117, the subject matter of any one or more of Examples114-116 optionally include, further comprising updating a scoreboard inresponse to determining that the first wearable device is synchronizedwith the video.

Example 118 is a control device comprising: a transceiver to: receive anindication from a sensor of a first wearable device; and a processor to:determine whether the first wearable device is time synchronized with asecond wearable device using the indication; and save in response todetermining that the first wearable device is synchronized with thesecond wearable device, a successful time synchronization message to adatabase.

In Example 119, the subject matter of Example 118 optionally includes,wherein to determine whether the first wearable device is timesynchronized with a second wearable device, the processor is todetermine whether a first timestamp corresponding to the indication issynchronized with a second timestamp corresponding to a secondindication received form the second wearable device.

In Example 120, the subject matter of any one or more of Examples118-119 optionally include, wherein the processor is further to use theindication to control a virtual pedal on a virtual car.

In Example 121, the subject matter of Example 120 optionally includes,wherein the indication includes a force measurement.

In Example 122, the subject matter of any one or more of Examples118-121 optionally include, wherein the processor is further to update ascoreboard in response to determining that the first wearable device issynchronized with the second wearable device.

Example 123 is a control device comprising: a transceiver to: receive,at a server, an indication from a sensor of a first wearable device; anda processor to: determine whether the first wearable device issynchronized with music being played; and save, in response todetermining that the first wearable device is synchronized with themusic, a successful music synchronization message to a database.

In Example 124, the subject matter of Example 123 optionally includes,wherein to determine whether the first wearable device is synchronizedwith the music, the processor is to determine whether a first timestampcorresponding to the indication is synchronized with a second timestampcorresponding to the music.

In Example 125, the subject matter of any one or more of Examples123-124 optionally include, wherein the indication includes a forcemeasurement.

In Example 126, the subject matter of any one or more of Examples123-125 optionally include, wherein the processor is to change volume ofthe music in response to receiving the indication.

In Example 127, the subject matter of any one or more of Examples123-126 optionally include, wherein the processor is to update ascoreboard in response to determining that the first wearable device issynchronized with the music.

Example 128 is a control device comprising: a transceiver to: receive,at a server, an indication from a sensor of a first wearable device; anda processor to: determine whether the first wearable device issynchronized with video being played; and save, in response todetermining that the first wearable device is synchronized with thevideo, a successful video synchronization message to a database.

In Example 129, the subject matter of Example 128 optionally includes,wherein to determine whether the first wearable device is synchronizedwith the video, the processor is to determine whether a first timestampcorresponding to the indication is synchronized with a second timestampcorresponding to the video.

In Example 130, the subject matter of any one or more of Examples128-129 optionally include, wherein the indication includes a forcemeasurement.

In Example 131, the subject matter of any one or more of Examples128-130 optionally include, wherein the processor is to update ascoreboard in response to determining that the first wearable device issynchronized with the video.

Example 132 is at least one machine readable medium includinginstructions that, when executed, cause the machine to performoperations for dynamic hardware acceleration, the operations comprising:receiving, at a server, an indication from a sensor of a first wearabledevice; determining whether the first wearable device is timesynchronized with a second wearable device using the indication; andsaving, in response to determining that the first wearable device issynchronized with the second wearable device, a successful timesynchronization message to a database.

In Example 133, the subject matter of Example 132 optionally includes,wherein determining whether the first wearable device is timesynchronized with a second wearable device includes determining whethera first timestamp corresponding to the indication is synchronized with asecond timestamp corresponding to a second indication received form thesecond wearable device.

In Example 134, the subject matter of any one or more of Examples132-133 optionally include, further comprising using the indication tocontrol a virtual pedal on a virtual car.

In Example 135, the subject matter of Example 134 optionally includes,wherein the indication includes a force measurement.

In Example 136, the subject matter of any one or more of Examples132-135 optionally include, further comprising updating a scoreboard inresponse to determining that the first wearable device is synchronizedwith the second wearable device.

Example 137 is at least one machine readable medium includinginstructions that, when executed, cause the machine to performoperations for dynamic hardware acceleration, the operations comprising:receiving, at a server, an indication from a sensor of a first wearabledevice; determining whether the first wearable device is synchronizedwith music being played; and saving, in response to determining that thefirst wearable device is synchronized with the music, a successful musicsynchronization message to a database.

In Example 138, the subject matter of Example 137 optionally includes,wherein determining whether the first wearable device is synchronizedwith the music includes determining whether a first timestampcorresponding to the indication is synchronized with a second timestampcorresponding to the music.

In Example 139, the subject matter of any one or more of Examples137-138 optionally include, wherein the indication includes a forcemeasurement.

In Example 140, the subject matter of any one or more of Examples137-139 optionally include, further comprising changing volume of themusic in response to receiving the indication.

In Example 141, the subject matter of any one or more of Examples137-140 optionally include, further comprising updating a scoreboard inresponse to determining that the first wearable device is synchronizedwith the music.

Example 142 is at least one machine readable medium includinginstructions that, when executed, cause the machine to performoperations for dynamic hardware acceleration, the operations comprising:receiving, at a server, an indication from a sensor of a first wearabledevice; determining whether the first wearable device is synchronizedwith video being played; and saving, in response to determining that thefirst wearable device is synchronized with the video, a successful videosynchronization message to a database.

In Example 143, the subject matter of Example 142 optionally includes,wherein determining whether the first wearable device is synchronizedwith the video includes determining whether a first timestampcorresponding to the indication is synchronized with a second timestampcorresponding to the video.

In Example 144, the subject matter of any one or more of Examples142-143 optionally include, wherein the indication includes a forcemeasurement.

In Example 145, the subject matter of any one or more of Examples142-144 optionally include, further comprising updating a scoreboard inresponse to determining that the first wearable device is synchronizedwith the video.

Example 146 is an apparatus for determining time synchronization, theapparatus comprising: means for receiving, at a server, an indicationfrom a sensor of a first wearable device; means for determining whetherthe first wearable device is time synchronized with a second wearabledevice using the indication; and means for saving, in response todetermining that the first wearable device is synchronized with thesecond wearable device, a successful time synchronization message to adatabase.

In Example 147, the subject matter of Example 146 optionally includes,wherein the means for determining whether the first wearable device istime synchronized with a second wearable device include means fordetermining whether a first timestamp corresponding to the indication issynchronized with a second timestamp corresponding to a secondindication received form the second wearable device.

In Example 148, the subject matter of any one or more of Examples146-147 optionally include, further comprising means for using theindication to control a virtual pedal on a virtual car.

In Example 149, the subject matter of Example 148 optionally includes,wherein the indication includes a force measurement.

In Example 150, the subject matter of any one or more of Examples146-149 optionally include, further comprising means for updating ascoreboard in response to determining that the first wearable device issynchronized with the second wearable device.

Example 151 is an apparatus for determining music synchronization, theapparatus comprising: means for receiving, at a server, an indicationfrom a sensor of a first wearable device; means for determining whetherthe first wearable device is synchronized with music being played; andmeans for saving, in response to determining that the first wearabledevice is synchronized with the music, a successful musicsynchronization message to a database.

In Example 152, the subject matter of Example 151 optionally includes,wherein the means for determining whether the first wearable device issynchronized with the music include means for determining whether afirst timestamp corresponding to the indication is synchronized with asecond timestamp corresponding to the music.

In Example 153, the subject matter of any one or more of Examples151-152 optionally include, wherein the indication includes a forcemeasurement.

In Example 154, the subject matter of any one or more of Examples151-153 optionally include, further comprising means for changing volumeof the music in response to receiving the indication.

In Example 155, the subject matter of any one or more of Examples151-154 optionally include, further comprising means for updating ascoreboard in response to determining that the first wearable device issynchronized with the music.

Example 156 is an apparatus for determining video synchronization, theapparatus comprising: means for receiving, at a server, an indicationfrom a sensor of a first wearable device; means for determining whetherthe first wearable device is synchronized with video being played; andmeans for saving, in response to determining that the first wearabledevice is synchronized with the video, a successful videosynchronization message to a database.

In Example 157, the subject matter of Example 156 optionally includes,wherein the means for determining whether the first wearable device issynchronized with the video include means for determining whether afirst timestamp corresponding to the indication is synchronized with asecond timestamp corresponding to the video.

In Example 158, the subject matter of any one or more of Examples156-157 optionally include, wherein the indication includes a forcemeasurement.

In Example 159, the subject matter of any one or more of Examples156-158 optionally include, further comprising means for updating ascoreboard in response to determining that the first wearable device issynchronized with the video.

Method examples described herein may be machine or computer-implementedat least in part. Some examples may include a computer-readable mediumor machine-readable medium encoded with instructions operable toconfigure an electronic device to perform methods as described in theabove examples. An implementation of such methods may include code, suchas microcode, assembly language code, a higher-level language code, orthe like. Such code may include computer readable instructions forperforming various methods. The code may form portions of computerprogram products. Further, in an example, the code may be tangiblystored on one or more volatile, non-transitory, or non-volatile tangiblecomputer-readable media, such as during execution or at other times.Examples of these tangible computer-readable media may include, but arenot limited to, hard disks, removable magnetic disks, removable opticaldisks (e.g., compact disks and digital video disks), magnetic cassettes,memory cards or sticks, random access memories (RAMs), read onlymemories (ROMs), and the like.

What is claimed is:
 1. A control device operated by a user, the controldevice comprising: a transceiver to: receive sensor data from a sensormonitoring an activity of the user; and assign a timestamp to the sensordata; a processor to: identify a time that an audible or visual cue waspresented to the user, the audible or visual cue being separate anddistinct from the sensor data received by the transceiver; identity anerror range for sensor data comparison, the error range adapted based onan age of the user; compare the timestamp of the sensor data to the timethat the audible or visual cue was presented to the user, to determinewhether the timestamp is within the error range; and save, in responseto determining that the timestamp falls within the error range, asuccessful movement indication to a database.
 2. The control device ofclaim 1, wherein the sensor includes an accelerometer.
 3. The controldevice of claim 2, wherein the sensor data includes a force measurement.4. The control device of claim 3, wherein to save the successfulmovement indication includes the processor to first determine whetherthe force measurement exceeds a minimum force.
 5. The control device ofclaim 1, further comprising a display that includes a user interface todisplay the successful movement indication.
 6. The control device ofclaim 5, wherein the processor is to increment a count of points for auser in a game displayed on the user interface based on the successfulmovement indication.
 7. The control device of claim 1, wherein thesensor is attached to footwear or embedded in footwear of a user.
 8. Thecontrol device of claim 1, wherein e sensor is attached to an anklebracelet.
 9. The control device of claim 1, wherein the processor is toplay a tone in response to saving the successful movement indication.10. The control device of claim 1, wherein the audio output includesmusic, and wherein to determine whether the timestamp falls within theerror range, the processor is to determine that the sensor data issynchronized with the music.
 11. The control device of claim 1, whereinthe visual output includes video and wherein to determine whether thetimestamp falls within the error range, the processor is to determinethat the sensor data is synchronized with the video.
 12. The controldevice of claim 1, wherein the transceiver is to send, in response todetermining that the timestamp falls outside the error range, a signalto the sensor indicating feedback to be performed at the sensor.
 13. Thecontrol device of claim 12, wherein the feedback includes hapticfeedback, light feedback, or audio feedback.
 14. A device configured tomove with footwear worn by a user, the device comprising: anaccelerometer to measure a force exerted by the user; a transceiver to:send information about the force to an external device; and receive aresponse from the external device, the external device configured to;identify a time that an audible or visual cue was presented to the user;identity an error range for sensor data comparison, the error rangeadapted based on an age of the user; compare a timestamp of when theforce was measured by the accelerometer to the time that the audible orvisual cue was presented to the user, to determine whether the timestampis within the error range; identify a force threshold: compare the forcemeasured by the accelerometer with the force threshold; and transmit theresponse to the transceiver, the response indicating whether the forceexceeded the force threshold and occurred within the error range; andfeedback hardware to generate feedback when the response indicates thatthe force fell below the force threshold or occurred outside the errorrange.
 15. The device of claim 14, wherein when the response indicatesthat the force exceeded the force threshold and occurred within theerror range, the transceiver is to receive an indication of pointsawarded to a user of the footwear in a game.
 16. The device of claim 14,wherein when the response indicates that the force exceeded the forcethreshold and occurred within the error range, the feedback hardware isto play a tone, generate haptic feedback, or display light.
 17. Thedevice of claim 14, wherein before the transceiver sends informationabout the force, the transceiver is to send an initialization indicationto the external device, the initialization indication sent in responseto the accelerometer determining a lack of movement for a predeterminedperiod of time.
 18. At least one non-transitory machine readable mediumincluding instructions that, when executed, cause the machine to performoperations, the operations comprising: receiving sensor data from aplurality of sensors; assigning a plurality of timestamps to the sensordata; identifying a time that an audible or visual cue was presented tothe user,the audible or visual cue being separate and distinct from thereceived sensor data; identifying an error range for sensor datacomparison, the error range adapted based on an age of the user;comparing the plurality of timestamps of the sensor data to the timethat the audible or visual cue was presented to the user, to determinewhether the plurality of timestamps are within the error range; and inresponse to determining that a frst timestamp of the plurality oftimestamps falls within the error range, saving a first indication to adatabase.
 19. The at least one non-transitory machine readable medium ofclaim 18, wherein in response to determining a set of timestamps of theplurality of timestamps fall within the error range, playing a pluralityof instrument lines of a song, wherein the plurality of instrument linescorrespond to the set of timestamps.
 20. The at least one non-transitorymachine readable medium of claim 18, wherein the sensor data includesforce information from the plurality of sensors.
 21. The at least onenon-transitory machine readable medium of claim 20, wherein in responseto saving the first indication, increasing or decreasing a speed of avirtual vehicle on a user interface in response to an increase ordecrease in force at a first sensor, the first sensor corresponding tothe first timestamp.
 22. The at least one non-transitory machinereadable medium of claim 18, further comprising determining that theplurality of timestamps are synchronized, and in response, playingmusic.
 23. The at least one non-transitory machine readable medium ofclaim 18, wherein the audible or visual cue includes an nth beat of asong.
 24. The at least one non-transitory machine readable medium ofclaim 18, further comprising displaying results of whether the pluralityof timestamps fall within the window on a user interface.
 25. The atleast one non-transitory machine readable medium of claim 18, furthercomprising assigning points in a virtual game to users of the pluralityof sensors according to temporal proximity of the plurality oftimestamps to the audible or visual cue.